<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns:ui="http://xmlns.jcp.org/jsf/facelets"
                template="./templates/templateHome.xhtml"
                xmlns="http://www.w3.org/1999/xhtml"
                xmlns:h="http://xmlns.jcp.org/jsf/html"
                xmlns:p="http://primefaces.org/ui"
                xmlns:f="http://xmlns.jcp.org/jsf/core">

    <ui:define name="title">
        Listar Recurso
    </ui:define>

    <ui:define name="content">

        <h:form id="formListarRecurso">
            <center>
                <p:commandButton id="btnRecarregarDropRecurso" title="Recarregar a área de recursos 'Arrastar'" label="Recarregar" value ="Recarregar"
                                 icon="icon-recarregar"                                                                                  
                                 actionListener ="#{listarBean.btnLimparRecursoDrop(actionEvent)}"/>
            </center>

            <p:fieldset id="fieldsetRecursosDisponiveis" legend="Recursos Disponíveis">
                <p:dataGrid id="dataGridRecursosDisponiveis" columns="3"
                            var="recurso" value="#{listarBean.listaRecurso}">
                    <p:column>
                        <p:panel id="panelRecursosDisponiveis" header="#{recurso.nome}" style="text-align:center">  
                            <h:panelGrid>
                                <p:graphicImage value="/resources/images/#{recurso.nome}.jpg"/>
                            </h:panelGrid>
                        </p:panel>                                
                        <p:draggable for="panelRecursosDisponiveis" revert="true"
                                     handle=".ui-panel-titlebar" stack=".ui-panel"/>
                    </p:column>
                </p:dataGrid>
            </p:fieldset>

            <p:fieldset id="fieldsetRecursosSelecionados" legend="Recursos Selecionados" style="margin-top:20px">
                <p:outputPanel id="dropAreaRecurso">                    
                    <center>
                        <h:outputText value="--- Solte o recurso aqui ---" style="font-size:20px;"
                                      rendered="#{empty listarBean.droppedRecurso}"/>
                    </center>                    
                    <center>
                        <p:dataTable id="dataTableListarRecurso" style="width: 80%"
                                     rendered="#{not empty listarBean.droppedRecurso}" 
                                     var="recurso" value="#{listarBean.droppedRecurso}">
                            <p:column headerText="Nome" style="width:24%">
                                <h:outputText value="#{recurso.nome}"/>
                            </p:column>

                            <p:column headerText="Observação" style="width:60%">
                                <h:outputText value="#{recurso.observacao}"/>
                            </p:column>

                            <p:column headerText="Detalhe" style="width:10px">
                                <center>
                                    <p:commandButton id="btnDetalharRecurso" title="Detalhar recurso" label="Detalhe" icon="icon-detalhar"
                                                     oncomplete="dialogListarRecurso.show()"
                                                     update=":formListarRecurso:panelGridListarRecurso" >
                                        <f:setPropertyActionListener value="#{recurso}" target="#{listarBean.recursoSelecionado}"/> 
                                    </p:commandButton>
                                </center>
                            </p:column>
                        </p:dataTable>
                    </center>                    
                </p:outputPanel>
            </p:fieldset>

            <p:droppable for="fieldsetRecursosSelecionados" tolerance="touch" activeStyleClass="ui-state-highlight"
                         datasource="dataGridRecursosDisponiveis" onDrop="handleDrop">  
                <p:ajax listener="#{listarBean.onRecursoDrop}" update="dropAreaRecurso"/>
            </p:droppable>

            <p:dialog id="dialogListarRecurso" header="Detalhe do recurso" widgetVar="dialogListarRecurso" resizable="false"
                      width="200" showEffect="fade" hideEffect="fade" modal="true" draggable="false">
                <h:panelGrid id="panelGridListarRecurso" columns="2" cellpadding="2">

                    <f:facet name="header">
                        <center>
                            <p:graphicImage value="/resources/images/#{listarBean.recursoSelecionado.nome}.jpg"/>
                        </center>
                    </f:facet>

                    <h:outputLabel value="Nome do recurso:"/>
                    <h:outputText value="#{listarBean.recursoSelecionado.nome}"/>

                    <h:outputLabel value="Observação:"/>
                    <h:outputText value="#{listarBean.recursoSelecionado.observacao}"/>

                    <h:outputLabel value="Tipo:"/>
                    <h:outputText value="#{listarBean.recursoSelecionado.tipo}"/>

                    <h:outputLabel value="Estado:"/>
                    <h:outputText value="#{listarBean.recursoSelecionado.estado}"/>

                </h:panelGrid>  
            </p:dialog>

        </h:form>
    </ui:define>

</ui:composition>